package org.qf.dao;

import org.qf.pojo.SmbmsUser;

import java.util.List;

/**
 * @author young
 * @create 2021-01-11-11:24
 * @description
 */


public interface SmbmsUserDao {
    /**
     * 通过用户编码查询用户信息
     * @param userCode  用户编码
     * @return  用户对象
     * @throws Exception
     */
    SmbmsUser queryUserByUserCode(String userCode) throws Exception;

    /**
     * 修改密码
     * @param oldPassword
     * @return
     * @throws Exception
     */
    int upDatepw(Long oldPassword,Long newPassword) throws Exception;
    /**
     * 查询用户信息并支持模糊查询支持角色查询支持分页
     * @param username  用户名
     * @return  用户集合
     * @throws Exception
     */
    List<SmbmsUser> queryUserByUserName(String username,int userRole,int currentPageNo,int pageSize) throws Exception;

    /**
     * 获取总条数
     * @return
     * @throws Exception
     */
    int getSmbmsUserCount(String username,int userRole) throws Exception;

    /**
     * 通过id查询所有信息
     * @param id
     * @return
     * @throws Exception
     */
    SmbmsUser queryUserById(Long id) throws Exception;

    /**
     * 修改用户信息
     * @param smbmsUser
     * @return
     * @throws Exception
     */
    int updateUser(SmbmsUser smbmsUser) throws Exception;

    /**
     * 增加用户信息
     * @param smbmsUser
     * @return
     * @throws Exception
     */
    int addUser(SmbmsUser smbmsUser) throws Exception;

    /**
     * 通过id进行删除
     * @param id
     * @return
     * @throws Exception
     */
    int deleteUser(Long id) throws Exception;
}
